package cn.aws360.boot.auth.api.pojo.response;

import com.alibaba.fastjson.JSONObject;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.List;

/**
 * @author junnan
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ApiModel("登录用户-响应实例")
public class LoginUserModel implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "用户 id")
    private Integer id;

    @ApiModelProperty(value = "部门 id")
    private Integer deptId;

    @ApiModelProperty(value = "用户名")
    private String username;

    @ApiModelProperty(value = "用户密码")
    private String password;

    @ApiModelProperty(value = "用户昵称")
    private String nickname;

    @ApiModelProperty(value = "用户头像")
    private String avatar;

    @ApiModelProperty(value = "用户邮箱")
    private String email;

    @ApiModelProperty(value = "用户手机")
    private String mobile;

    @ApiModelProperty(value = "所在部门")
    private String deptName;

    @ApiModelProperty(value = "角色ID集合")
    private List<Integer> roleIdList;

    @ApiModelProperty(value = "菜单ID集合")
    private List<Integer> menuIdList;

    @ApiModelProperty(value = "角色权限集合")
    private List<String> roleCodeList;

    @ApiModelProperty(value = "菜单权限集合")
    private List<String> menuPermList;

    @ApiModelProperty(value = "菜单页面对象")
    private JSONObject menuPageJson;

}
